In [1]:
import pandas as pd
import datetime
import numpy as np

Loading Production Data from 1987 to 2008

The production data from these years follows the same file format.

We can therefore import using the same format and put the dataframes into a dictionary.

In 1990 we manually fix well API No: 21451, DUCKETT "A" and set it's well number to 1 as unspecified. Same in 1991.


In [2]:
dates_cols_oil = ["OIL."+str(i) for i in range(0, 12, 1)]
dates_cols_gas = ["GAS."+str(i)  for i in range(0, 12, 1)]
dates_cols = dates_cols_oil + dates_cols_gas
headers_old_2003 = ['API_COUNTY', 'API_NUMBER', 'SUFFIX', 'WELL_NAME','WELL_NO', '  OPER_NO', 'OPER_SUFFIX',
       'OPERATOR', 'ME', 'SECTION', 'TWP','RAN', 'Q4', 'Q3', 'Q2', 'Q1', 'LATITUDE', 'LONGITUDE', 'OTC_COUNTY',
           'OTC_LEASE_NO', 'OTC_SUB_NO', 'OTC_MERGE', 'POOL_NO', 'CODE','FORMATION', 'OFB', 'ALLOWABLE_CLASS',
       'ALLOWABLE_TYPE', ' PURCH_NO',
       'PURCHASER', 'PURCH_SUFFIX', 'OFB.1',
       'YEAR', 'JAN', 'OIL.0', 'GAS.0', 'FEB',
       'OIL.1', 'GAS.1', 'MAR', 'OIL.2', 'GAS.2',
       'APR', 'OIL.3', 'GAS.3', 'MAY', 'OIL.4',
       'GAS.4', 'JUN', 'OIL.5', 'GAS.5', 'JUL',
       'OIL.6', 'GAS.6', 'AUG', 'OIL.7', 'GAS.7',
       'SEP', 'OIL.8', 'GAS.8', 'OCT', 'OIL.9',
       'GAS.9', 'NOV', 'OIL.10', 'GAS.10', 'DEC',
       'OIL.11', 'GAS.11']
headers_new_2004 = ['API_COUNTY', 'API_NUMBER', 'S', 'WELL_NAME','WELL_NO', '  OPER_NO',
       'OPERATOR', 'ME', 'SECTION', 'TWP','RAN', 'Q4', 'Q3', 'Q2', 'Q1', 'LATITUDE', 'LONGITUDE', 'OTC_COUNTY',
           'OTC_LEASE_NO', 'OTC_SUB_NO', 'OTC_MERGE', 'POOL_NO', 'CODE','FORMATION','ALLOWABLE_CLASS',
       'ALLOWABLE_TYPE', ' PURCH_NO',
       'PURCHASER', 'OFB.1',
       'YEAR', 'JAN', 'OIL.0', 'GAS.0', 'FEB',
       'OIL.1', 'GAS.1', 'MAR', 'OIL.2', 'GAS.2',
       'APR', 'OIL.3', 'GAS.3', 'MAY', 'OIL.4',
       'GAS.4', 'JUN', 'OIL.5', 'GAS.5', 'JUL',
       'OIL.6', 'GAS.6', 'AUG', 'OIL.7', 'GAS.7',
       'SEP', 'OIL.8', 'GAS.8', 'OCT', 'OIL.9',
       'GAS.9', 'NOV', 'OIL.10', 'GAS.10', 'DEC',
       'OIL.11', 'GAS.11']
df_in = None
production_data = {}
for i in range(1987, 2016, 1):
    dates_oil = [ "OIL_"+str(datetime.date(i, j+1, 1)) for j in range(0, 12, 1)]
    dates_gas = [ "GAS_"+str(datetime.date(i, j+1, 1)) for j in range(0, 12, 1)]
    renamed_oil = {old: new for old, new in zip(dates_cols_oil, dates_oil)}
    renamed_gas = {old: new for old, new in zip(dates_cols_gas, dates_gas)}
    renamed_cols = {**renamed_oil, **renamed_gas}
    if i != 1994: #No Data from 1994
        print(i)
        if i <= 2008:
            df = None
            if i < 2004:
                df = pd.read_csv("../raw/"+str(i)+"prodn.txt", delimiter="|", skiprows=[0, 2], names=headers_old_2003)
            else:
                df = pd.read_csv("../raw/"+str(i)+"prodn.txt", delimiter="|", skiprows=[0, 2], names=headers_new_2004)
            df_in = df.copy()
            df.rename(index=str, columns=renamed_cols, inplace=True)
            df = df.drop(['YEAR','JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL','AUG', 'SEP', 'OCT', 'NOV', 'DEC'], axis=1)
            production_data[i] = df
        else:
            df = pd.read_csv("../raw/"+str(i)+"prodn.txt", delimiter="|")
            df[["API_COUNTY", "API_NUMBER"]].apply(lambda x: pd.to_numeric(x, errors='coerce',downcast='integer'))
            df_in = df.copy()
            df.rename(renamed_cols)
            production_data[i] = df
df_in.head()


1987
1988
1989
E:\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py:2717: DtypeWarning: Columns (0,1,5,6,9,16,17,18,19,20,21,28,30,32,33,36,39,42,45,48,51,54,57,60,63,66) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)
1990
1991
1992
1993
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
E:\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py:2717: DtypeWarning: Columns (0,1,5,8,15,16,17,18,19,20,27,29,30,33,36,39) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)
2005
E:\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py:2717: DtypeWarning: Columns (0,1,5,8,15,16,17,18,19,20,27,29,30) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)
2006
2007
E:\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py:2717: DtypeWarning: Columns (0,1,5,8,15,16,17,18,19,20,27,29,30,33,36) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)
2008
2009
2010
2011
2012
2013
2014
2015
Out[2]:
API_COUNTY API_NUMBER S WELL_NAME WELL_NO OPER_NO OPERATOR ME SECTION TWP ... GAS.8 OCT OIL.9 GAS.9 NOV OIL.10 GAS.10 DEC OIL.11 GAS.11
0 3 1 NaN KIRCHER 1 4030 CHAMPLIN EXPLORATION INC INDIAN 4 27N ... NaN 10 NaN NaN 11 NaN NaN 12 NaN NaN
1 3 25 NaN HAGUE 1 19694 BVD INC Indian 22 27N ... 31.0 10 NaN 39.0 11 NaN 37.0 12 NaN 45.0
2 3 68 NaN ADAMS "A" 1-3 17441 CHESAPEAKE OPERATING LLC Indian 3 25N ... 0.0 10 NaN 0.0 11 NaN 0.0 12 NaN NaN
3 3 71 NaN NEWLIN 1 7775 COMBINED RESOURCES CORPORATION Indian 19 25N ... 1089.0 10 NaN 1089.0 11 NaN 873.0 12 NaN 512.0
4 3 73 NaN WOODWARD (VOSS) 1 11739 MACK ENERGY CO Indian 25 24N ... 608.0 10 NaN 468.0 11 NaN 344.0 12 NaN 857.0

5 rows × 66 columns


In [3]:
def filter_data(row):
    buffer = []
    for val in row:
        val_parsed = None
        try:
            val_parsed = int(val)
        except ValueError:
            val_parsed = 0
        buffer.append(val_parsed)
    return np.array(buffer, dtype=np.int32)

In [4]:
gas_dataframe = None
gas_prod_dfs = []
for year in range(1987, 2016):
    print(year)
    if year != 1994:
        gas_data = {}
        filter_col = [col for col in list(production_data[year]) if col.startswith('GAS')]
        yearly_prod_data = production_data[year]
        for i in range(1, len(yearly_prod_data.index)):
            row = yearly_prod_data.iloc[[i]]
            api_num = row["API_NUMBER"].values.astype(np.int32)[0]
            pdata = filter_data(row[filter_col].values[0])
            gas_data[api_num] = pdata
        months = pd.date_range(start=str(year)+'-01-01', periods=12, freq='M')
        gas_dataframe = pd.DataFrame.from_dict(gas_data)
        gas_dataframe = gas_dataframe.set_index(months) 
        gas_prod_dfs.append(gas_dataframe)
gas_dataframe.head()


1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
Out[4]:
1 2 3 4 5 6 8 9 10 11 ... 60118 60119 60120 60123 60124 60125 60133 60142 60143 76639
2015-01-31 594 0 2115 0 1631 0 4113 1276 2837 18 ... 374 590 230 437 1164 632 363 887 718 39
2015-02-28 585 0 1604 0 1425 0 3795 1112 2175 28 ... 607 465 203 454 1077 539 320 798 595 64
2015-03-31 655 0 1563 0 1487 0 4121 869 2479 28 ... 391 463 222 525 1315 626 406 1956 689 92
2015-04-30 604 0 1847 0 1493 0 4043 812 2130 13 ... 352 453 221 486 1234 952 313 876 757 85
2015-05-31 637 0 1680 0 1522 862 4161 989 2479 46 ... 518 529 246 437 1181 905 205 837 672 92

5 rows × 10236 columns


In [5]:
gas_all_df = pd.concat(gas_prod_dfs).fillna(0)

In [6]:
gas_all_df.to_hdf('../processed/gas/gas_data.h5','table', mode="w")

In [7]:
num_elements = []
zero_elements = 0
for column in gas_all_df:
    col = gas_all_df[column]
    try:
        num = col[(col!=0) | (col != 0.0)]
        num_elements.append(len(num))
    except ValueError:
        zero_elements+=1

In [8]:
print(np.mean(num_elements), zero_elements)


163.848445908 0

In [9]:
print(np.max(num_elements))


319

In [32]:
print(np.where( np.array(num_elements) >= 100 )[0].shape)


(9120,)

In [10]:
import matplotlib.pyplot as plt
%matplotlib inline
fig, ax = plt.subplots(1,1)
ax.hist(num_elements, bins=20)


Out[10]:
(array([ 1318.,   372.,   337.,   306.,   383.,   489.,   556.,   527.,
          543.,   505.,   572.,   731.,   792.,   892.,  1028.,   943.,
          729.,   655.,   627.,   146.]),
 array([   0.  ,   15.95,   31.9 ,   47.85,   63.8 ,   79.75,   95.7 ,
         111.65,  127.6 ,  143.55,  159.5 ,  175.45,  191.4 ,  207.35,
         223.3 ,  239.25,  255.2 ,  271.15,  287.1 ,  303.05,  319.  ]),
 <a list of 20 Patch objects>)

In [21]:
def get_col_length(df, length):
    for column in df:
        col = df[column]
        try:
            num = col[(col!=0) | (col != 0.0)]
            if len(num) is length:
                return column, col
        except:
            pass

In [34]:
api_num, get_col = get_col_length(gas_all_df, 150)
#num = get_col[(get_col!=0) | (get_col != 0.0)]
fig, ax = plt.subplots(1,1)
get_col.plot(ax=ax)


Out[34]:
<matplotlib.axes._subplots.AxesSubplot at 0x270204f9390>

In [62]:
indices = np.where(np.array(num_elements) >= 310 )
print (indices)
print(gas_all_df.columns[indices])
greater_two_hundred = gas_all_df[gas_all_df.columns[indices]]

new_data = []
for row in greater_two_hundred.values.T:
    if max(row)>0:
        new_data.append([item*1./max(row) for item in row])
    else:
        new_data.append(row)
new_data = np.transpose(new_data)
new_data = pd.DataFrame(new_data)
new_data.set_index(greater_two_hundred.index)
#new_data.plot(ax=ax, legend=False)


(array([  241,   643,   653,   663,   666,   894,  1035,  1281,  1314,
        1316,  1317,  1583,  1586,  1604,  3336,  3999,  4338, 11045, 11385], dtype=int64),)
Int64Index([  258,   721,   732,   742,   745,   982,  1127,  1378,  1411,
             1413,  1414,  1692,  1695,  1713, 20749, 21412, 21751, 35778,
            36274],
           dtype='int64')
Out[62]:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1987-01-31 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
1987-02-28 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
1987-03-31 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
1987-04-30 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.007697 0.048979 0.090909 1.000000 0.000000
1987-05-31 0.000000 0.469362 0.617033 0.049568 0.038300 0.007090 0.132337 0.040948 0.059117 0.180337 0.177033 0.051600 0.060486 0.104886 0.000867 0.128449 0.056066 0.981993 0.000000
1987-06-30 0.000000 0.477821 0.746910 0.200691 0.253410 0.188864 0.059714 0.028117 0.034363 0.198798 0.208724 0.059427 0.045393 0.166528 0.000000 0.074917 0.224105 0.928078 0.000000
1987-07-31 0.000000 0.442245 0.358485 0.471330 0.267576 0.388363 0.285197 0.073051 0.266704 0.202345 0.183180 0.397908 0.273491 0.160707 0.003706 0.367964 0.008869 0.824803 0.035627
1987-08-31 0.000000 0.224664 0.020629 0.070294 0.150577 0.464214 0.042533 0.021511 0.305142 0.233453 0.283262 0.178972 0.010327 0.051871 0.003602 0.465646 0.332119 0.882041 0.037793
1987-09-30 0.000000 0.085640 0.000000 0.466149 0.604932 0.549233 0.444001 0.222374 0.619541 0.264232 0.350742 0.446876 0.560259 0.483160 0.002466 0.448124 0.185144 0.936921 0.049286
1987-10-31 0.000000 0.223814 0.000000 0.357858 0.502099 0.375894 0.384008 0.200262 0.269722 0.299313 0.364357 0.334742 0.406718 0.472661 0.006845 0.387279 0.276845 0.000000 0.041192
1987-11-30 0.000000 0.255019 0.000000 0.211054 0.366212 0.179451 0.231891 0.077528 0.630509 0.000000 0.000000 0.021817 0.186677 0.194802 0.071272 0.470889 0.163763 0.906533 0.045051
1987-12-31 0.000000 0.476121 0.211350 0.108808 0.235047 0.041990 0.094261 0.045589 0.710002 0.235456 0.375376 0.133537 0.040853 0.482225 0.025376 0.464542 0.153468 0.580417 0.034829
1988-01-31 0.004888 0.490003 0.211350 0.644387 0.565058 0.289774 0.712481 0.426403 0.746931 0.021351 0.039341 0.708616 0.756809 0.511435 0.051440 0.288493 0.174850 0.570234 0.034381
1988-02-29 0.003570 0.471224 0.215604 0.524698 0.147429 0.675509 0.774331 0.289856 0.697776 0.114739 0.112057 0.695110 0.907739 0.474532 0.033656 0.370033 0.065727 0.655877 0.037745
1988-03-31 0.004797 0.506880 0.289613 0.174439 0.418678 0.755211 0.823923 0.182245 0.502767 0.133857 0.142200 0.732165 0.929982 0.414761 0.043713 0.337886 0.219671 0.716330 0.039898
1988-04-30 0.004959 0.501497 0.421336 0.293782 0.952781 0.745737 0.805906 0.376993 0.027521 0.140689 0.149030 0.700790 0.905470 0.685863 0.010297 0.360375 0.191479 0.925827 0.047713
1988-05-31 0.004756 0.535778 0.349976 0.364767 0.693075 0.097671 0.406854 0.180007 0.024603 0.130112 0.135780 0.611511 0.428393 0.305717 0.039021 0.341198 0.112449 0.928935 0.045886
1988-06-30 0.004614 0.127368 1.000000 0.037478 0.031480 0.231037 0.536497 0.027954 0.038489 0.112308 0.110372 0.066630 0.328189 0.357484 0.036450 0.392384 0.000000 0.893349 0.038071
1988-07-31 0.004929 0.283147 0.925189 0.017098 0.020986 0.282807 0.248886 0.004477 0.007094 0.143974 0.131682 0.007757 0.010894 0.097921 0.036824 0.371689 0.257998 0.916716 0.041688
1988-08-31 0.003762 0.209244 0.936105 0.327634 0.526758 0.215635 0.642831 0.107283 0.006792 0.159183 0.154813 0.007480 0.006809 0.772557 0.074500 0.369895 0.139373 0.816067 0.039099
1988-09-30 0.005152 0.395702 0.842109 0.698100 0.767051 0.170894 0.626672 0.159260 0.088046 0.152219 0.110737 0.009558 0.008057 0.732536 0.027797 0.336369 0.152835 0.769119 0.039329
1988-10-31 0.004604 0.251983 0.826617 0.398964 0.465897 0.244362 0.598068 0.244377 0.009308 0.153270 0.155860 0.172600 0.734793 0.518087 0.065996 0.386451 0.120051 0.829037 0.046128
1988-11-30 0.004442 0.373482 0.894927 0.012953 0.023610 0.574537 0.175799 0.306126 0.224693 0.149755 0.142792 0.469456 0.695188 0.789917 0.054638 0.346578 0.075071 0.809743 0.035277
1988-12-31 0.004503 0.360329 0.851180 0.545941 0.749213 0.717193 0.483470 0.312841 0.473184 0.158723 0.160004 0.457820 0.500794 0.810603 0.052187 0.353753 0.048622 0.844204 0.032228
1989-01-31 0.004594 0.345556 0.868759 0.704663 0.938090 0.731007 0.166790 0.346910 0.628396 0.157770 0.167198 0.522372 0.008057 0.783472 0.023897 0.341198 0.000000 0.747093 0.037720
1989-02-28 0.002829 0.351384 0.852464 0.608463 0.664218 0.518550 0.656482 0.295261 0.597454 0.131853 0.154722 0.624186 0.160463 0.677963 0.021924 0.175773 0.684194 0.541508 0.025284
1989-03-31 0.004351 0.395378 0.747793 0.492919 0.468520 0.816759 0.571044 0.181590 0.434293 0.139342 0.129861 0.597590 0.259986 0.435239 0.014526 0.362307 0.741368 0.704164 0.024848
1989-04-30 0.004746 0.223248 0.785279 0.330052 0.317943 0.304505 0.301077 0.256661 0.323204 0.069113 0.052910 0.045020 0.154902 0.583160 0.001584 0.321882 0.780805 0.804277 0.035434
1989-05-31 0.004604 0.342763 0.796677 0.474784 0.669990 0.805513 0.735048 0.331404 0.555997 0.224879 0.186595 0.028397 0.009305 0.794387 0.007413 0.000000 0.804561 0.000000 0.036220
1989-06-30 0.004543 0.498745 0.323647 0.460449 0.575551 0.227676 0.655461 0.304488 0.664268 0.274053 0.241736 0.121277 0.167272 0.724636 0.018307 0.264763 0.423345 0.664130 0.028333
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2013-07-31 0.016886 0.140764 0.200032 0.201036 0.203043 0.193387 0.176170 0.105482 0.265899 0.109450 0.117111 0.091979 0.207785 0.072869 0.068223 0.146799 0.192113 0.042821 0.041241
2013-08-31 0.020080 0.139752 0.184701 0.258895 0.263379 0.187152 0.165583 0.103680 0.219813 0.106625 0.116155 0.095096 0.205515 0.073077 0.063949 0.143212 0.157586 0.041213 0.040539
2013-09-30 0.005730 0.139307 0.184620 0.234888 0.237671 0.172422 0.161776 0.098056 0.297645 0.104063 0.111055 0.092534 0.201089 0.069958 0.057717 0.140315 0.156636 0.020419 0.043793
2013-10-31 0.018731 0.131010 0.201557 0.242314 0.244491 0.167166 0.167533 0.099749 0.295583 0.104885 0.111511 0.095581 0.210849 0.071933 0.060003 0.142108 0.170257 0.025457 0.045039
2013-11-30 0.018863 0.124049 0.153716 0.234888 0.239769 0.132571 0.161218 0.095272 0.243862 0.103078 0.108870 0.089417 0.209374 0.069231 0.055206 0.137417 0.150618 0.027118 0.034648
2013-12-31 0.005933 0.118099 0.179483 0.247496 0.257083 0.124381 0.167719 0.093252 0.235007 0.104129 0.110873 0.084915 0.210622 0.084304 0.048406 0.129415 0.150934 0.025082 0.042826
2014-01-31 0.013083 0.113283 0.226601 0.142832 0.181007 0.150113 0.149238 0.095436 0.237925 0.109713 0.109462 0.076049 0.209601 0.071726 0.048361 0.133278 0.156161 0.027976 0.040285
2014-02-28 0.017220 0.089485 0.146653 0.135751 0.201469 0.115213 0.139116 0.090631 0.200091 0.083402 0.097851 0.055963 0.183273 0.068087 0.044012 0.122517 0.147133 0.032799 0.051112
2014-03-31 0.017403 0.101303 0.191363 0.188256 0.224029 0.187519 0.163726 0.093143 0.220165 0.097494 0.110919 0.085815 0.193827 0.069231 0.051709 0.136313 0.006969 0.037247 0.042136
2014-04-30 0.020080 0.036952 0.196099 0.219344 0.235047 0.153047 0.154718 0.090959 0.159589 0.103801 0.107504 0.076742 0.180322 0.066528 0.056686 0.129001 0.242002 0.036551 0.039341
2014-05-31 0.018011 0.191476 0.194574 0.257858 0.252886 0.188925 0.170505 0.090795 0.160545 0.108958 0.112695 0.082768 0.195415 0.064865 0.056043 0.128587 0.230757 0.037355 0.038894
2014-06-30 0.019066 0.182734 0.166800 0.230397 0.230850 0.147607 0.162333 0.131251 0.207637 0.088428 0.107595 0.082491 0.195869 0.064033 0.051739 0.142384 0.214919 0.038587 0.033063
2014-07-31 0.018072 0.177635 0.179965 0.238169 0.236097 0.184219 0.166233 0.111760 0.210606 0.078015 0.111329 0.081798 0.204494 0.067464 0.046433 0.152732 0.209059 0.033817 0.032252
2014-08-31 0.016541 0.160474 0.183497 0.238860 0.229276 0.180551 0.160754 0.127593 0.210203 0.082515 0.109462 0.081036 0.209487 0.065177 0.050558 0.139073 0.224739 0.027386 0.032881
2014-09-30 0.017251 0.050024 0.187269 0.216926 0.211962 0.178106 0.157689 0.146047 0.196569 0.081956 0.104453 0.083668 0.198139 0.065489 0.051574 0.129553 0.185303 0.034997 0.033208
2014-10-31 0.014817 0.110612 0.192085 0.240933 0.229801 0.176884 0.148496 0.099476 0.244918 0.086555 0.110099 0.084499 0.203246 0.051559 0.053637 0.058913 0.214919 0.027386 0.033414
2014-11-30 0.046580 0.110612 0.168566 0.240933 0.229801 0.176884 0.148496 0.099476 0.244918 0.081332 0.105819 0.084499 0.203246 0.051559 0.051963 0.110237 0.170890 0.034193 0.030401
2014-12-31 0.023163 0.001457 0.183175 0.021071 0.092340 0.026099 0.000279 0.005787 0.001358 0.085997 0.108915 0.000000 0.014412 0.003222 0.049676 0.122792 0.147608 0.029584 0.030861
2015-01-31 0.022697 0.000000 0.168727 0.000000 0.084470 0.050058 0.003993 0.000000 0.000000 0.088855 0.107049 0.000069 0.000000 0.000000 0.048346 0.120447 0.142540 0.009325 0.017590
2015-02-28 0.021510 0.000000 0.168245 0.000000 0.119622 0.070411 0.000000 0.000000 0.000000 0.076898 0.096713 0.000000 0.000000 0.000000 0.041322 0.116998 0.131929 0.002626 0.019901
2015-03-31 0.014999 0.130848 0.189838 0.187392 0.233473 0.101277 0.009565 0.089703 0.103995 0.092107 0.108551 0.000069 0.006128 0.063825 0.051500 0.154663 0.141115 0.008950 0.034333
2015-04-30 0.009553 0.122916 0.182132 0.282383 0.281217 0.116619 0.222325 0.113999 0.271232 0.100253 0.104544 0.067392 0.179755 0.075780 0.049288 0.122517 0.107222 0.057023 0.019538
2015-05-31 0.007474 0.152865 0.156526 0.255786 0.250787 0.125298 0.184621 0.121806 0.260113 0.105640 0.107185 0.093365 0.186337 0.082121 0.051470 0.137555 0.110548 0.027279 0.021231
2015-06-30 0.015506 0.208475 0.187992 0.250086 0.238720 0.141678 0.173848 0.099694 0.290501 0.100220 0.102723 0.084430 0.177826 0.068295 0.049572 0.137141 0.127494 0.034193 0.022163
2015-07-31 0.012139 0.210134 0.188393 0.250086 0.238720 0.154392 0.173291 0.121260 0.270578 0.095457 0.106775 0.081590 0.191103 0.074844 0.048421 0.062500 0.140957 0.037033 0.031913
2015-08-31 0.019380 0.206168 0.186707 0.247841 0.235047 0.151274 0.169577 0.110504 0.208945 0.103078 0.105546 0.078473 0.187358 0.076715 0.051828 0.140728 0.160120 0.044536 0.022695
2015-09-30 0.019867 0.198964 0.181570 0.236097 0.226128 0.122670 0.160661 0.106792 0.154407 0.094242 0.100401 0.076742 0.194281 0.078378 0.047390 0.140039 0.146183 0.036068 0.031659
2015-10-31 0.019482 0.198964 0.187430 0.236097 0.226128 0.122670 0.160661 0.106792 0.154407 0.098972 0.099080 0.076742 0.194281 0.078378 0.044775 0.146799 0.134463 0.374993 0.032494
2015-11-30 0.019482 0.198195 0.181490 0.218480 0.216159 0.108551 0.147103 0.124481 0.193047 0.094077 0.097851 0.072655 0.184748 0.073909 0.000000 0.135486 0.132563 0.062222 0.022417
2015-12-31 0.000000 0.211632 0.000000 0.247668 0.233998 0.111729 0.157689 0.119950 0.203512 0.094800 0.099672 0.079720 0.191784 0.075676 0.000000 0.000000 0.000000 0.075138 0.000000

336 rows × 19 columns


In [69]:
fig, ax = plt.subplots(1,1, figsize=(12, 8))
new_data.plot(ax=ax, legend=False, colormap="Greys")
ax.set_xlabel(r"$Time$", fontsize=28)
ax.set_ylabel(r"$Normalized \ Gas \ Production$", fontsize=28)
fig.savefig("../img/production_max_values.png", dpi=300, layout="tight")



In [ ]: